import api from './user.js'

// 武器相关API
export const weaponApi = {
  // 获取所有武器列表（用于前端展示）
  getAllWeapons() {
    // 添加时间戳参数避免浏览器缓存
    const timestamp = Date.now()
    return api.get(`/weapon/list/all?_t=${timestamp}`, {
      headers: {
        'Cache-Control': 'no-cache, no-store, must-revalidate',
        'Pragma': 'no-cache',
        'Expires': '0'
      }
    })
  },

  // 根据ID获取武器详情
  getWeaponById(id) {
    // 添加时间戳参数避免浏览器缓存
    const timestamp = Date.now()
    return api.get(`/weapon/get?weaponId=${id}&_t=${timestamp}`, {
      headers: {
        'Cache-Control': 'no-cache, no-store, must-revalidate',
        'Pragma': 'no-cache',
        'Expires': '0'
      }
    })
  },

  // 根据英雄ID获取武器列表
  getWeaponsByHeroId(heroId) {
    const timestamp = Date.now()
    return api.get(`/weapon/list/hero/${heroId}?_t=${timestamp}`, {
      headers: {
        'Cache-Control': 'no-cache, no-store, must-revalidate',
        'Pragma': 'no-cache',
        'Expires': '0'
      }
    })
  },

  // 分页获取武器列表（管理员）
  getWeaponListByPage(params) {
    const { current = 1, pageSize = 10, weaponName, heroId } = params
    let url = `/weapon/list/page?current=${current}&pageSize=${pageSize}`
    if (weaponName) url += `&weaponName=${encodeURIComponent(weaponName)}`
    if (heroId) url += `&heroId=${heroId}`
    return api.get(url)
  },

  // 添加武器（管理员）
  addWeapon(data) {
    return api.post('/weapon/add', data)
  },

  // 更新武器（管理员）
  updateWeapon(data) {
    return api.post('/weapon/update', data)
  },

  // 删除武器（管理员）
  deleteWeapon(id) {
    return api.post('/weapon/delete', { id })
  }
}

export default weaponApi